/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package mx.edu.itschapala.sistemas.septimo.Control;

import java.util.ArrayList;
import java.util.List;
import mx.edu.itschapala.sistemas.septimo.Modelo.Producto;
import mx.edu.itschapala.sistemas.septimo.Modelo.Venta;
import mx.edu.itschapala.sistemas.septimo.Vista.enumeracion.TipoBusqueda;

/**
 *
 * @author Sony
 */
public class VentaLnLista implements VentaLnLocal{

    private List<Venta>lista= new  ArrayList<Venta>();
    @Override
    
    public void Ventaregistrar(Venta venta) {
        lista.add(venta);
       
    }

    @Override
    public void Ventamodificar(Venta venta) {
      Venta tmp=buscarPorId(venta.getId());
         if(tmp!=null){
             lista.remove(tmp);
             lista.add(venta);
         }  
    }

    @Override
    public void Ventaeliminar(Venta venta) {
       Venta tmp=buscarPorId(venta.getId());
        if(tmp!=null){
            lista.remove(tmp);
        }
    
    }
    @Override
    public Venta buscarPorId(int id) {
    Venta tmp=null;
         for(Venta v :lista){
             if(v.getId()==id){
                 tmp=v;
                 
             }
         }
         return tmp; 
    }
    @Override
    public List<Venta> getTodos() {
    return lista;
    }

    @Override
    public List<Venta> getPornombre(String Nombre, TipoBusqueda criterio) {
       List<Venta> tmp=new ArrayList<Venta>();
        switch(criterio){
            case INICIA:
                for(Venta v: lista){
                    if(v.getFechadelacompra().startsWith(Nombre)){
                        tmp.add(v);
                    }
                }
            break;
            case CONTIENE:
                for(Venta v: lista){
                    if(v.getFechadelacompra().contains(Nombre)){
                    tmp.add(v);
                }
            }
        break;
    }
    return tmp; 
      }

   
    }

  
    

    

